﻿#ifndef DISKTHREAD_H
#define DISKTHREAD_H

#include <QObject>
#include <QThread>

#include "mcommon.h"

class DiskThread : public QThread
{
    Q_OBJECT
public:
    enum DiskStatus{
      UDISK_ADD,
      UDISK_REMOVE,
      UDISK_ERR
    };

    explicit DiskThread(QObject *parent = nullptr);
    ~DiskThread(void);

signals:
    //默认是将/udisk地址发送去
    //系统自挂载U盘，到/udisk目录下
    void diskStatusSignal(DiskStatus status, const QString & path);

protected:
    void run(void);

private:
    bool updataUsb(void);
    int getRegExp(const QString pattern, const QString &text, QStringList &list);

private:
    int hotplug_sock = -1;
    bool diskStatus = false;
};

#endif // DISKTHREAD_H
